home *** CD-ROM | disk | FTP | other *** search
- VGA-Simulator V0.71 (c) 1992 by Christoph Zwerschke
- ===================================================
-
-
- Sinn und Zweck:
- ---------------
- Der VGA-Simulator ist ein Hilfsprogramm für den Atari TT.
- Er soll die fünf niedrigen TT-Auflösungen (VGA-Auflösungen) mit der hohen
- TT-Auflösung simulieren. Das Programm ist notwendig, weil ein Monitor für
- die hohe TT-Auflösung (z.B. TTM 194/195) normalerweise nicht VGA-Auflösungen
- anzeigen kann. Und wer hat schon den Platz und das Geld, sich neben dem
- Monochrom-Großbildschirm noch einen VGA-Monitor aufstellen zu können?
-
-
- Lieferumfang:
- -------------
- Der VGA-Simulator arbeitet rein softwaremäßig.
- Dazu gehören die folgenden vier Dateien:
-
- VGA_SIMU.TXT : diese Information
- VGA_SIMU.PRG : der eigentliche Simulator, gehört in den AUTO-Ordner
- VGA_SIMU.CPX : Kontrollprogramm für den Simulator, gehört in den CPX-Ordner
- PATCH.PRG : Programm zum Patchen der Voreinstellungen
-
-
- Copyright:
- ----------
- Copyright (c) 1992 by Christoph Zwerschke.
-
- Die Versionen 0.xx des VGA-Simulators sind "Public Domain".
- Sie dürfen nach Belieben kopiert werden, auch über Mailboxen,
- unter der Voraussetzung, daß dies unentgeltlich geschieht.
-
- Ab Version 1.00 wird der VGA-Simulator voraussichtlich "Shareware".
- Er darf dann weiterhin unentgeltlich kopiert werden, aber bei
- regelmäßiger Benutzung ist an den Autor eine geringe Gebühr zu
- zahlen. Hinter dem Programm steckt nämlich viel Detailarbeit.
-
- Voraussetzung zur Weiterentwicklung des VGA-Simulators ist allerdings
- eine entsprechende Resonanz bei den Anwendern. Verbesserungsvorschläge
- und Honorierungen jedweder Art (Lenin-Orden, Schinkenbrote, ...) werden
- vom Autor gerne angenommen, und natürlich auf die Gebühr für die
- Shareware-Version angerechnet, falls eine solche entsteht.
-
-
- Haftungsausschluß:
- ------------------
- Natürlich kann die Funktionsfähigkeit des VGA-Simulators nicht garantiert
- werden und der Autor haftet auch nicht für irgendwelche Schäden, die sich
- aus der Benutzung des Programmes oder der Dokumentation ergeben können
- (einschließlich, aber nicht beschränkt auf Explosion oder Implosion des
- Monitors, Durchschmoren des Shifters und Formatieren der Festplatte).
-
-
- Funktionsprinzip:
- -----------------
- Der VGA-Simulator legt einen zusätzlichen Bildschirmspeicher an, der auf
- dem Monochrom-Monitor angezeigt wird. Das Betriebssystem und die Anwender-
- programme benutzen nur einen "virtuellen" Bildschirm, der vom VGA-Simulator
- im VBl-Interrupt, also 71 mal in der Sekunde, in die hohe TT-Auflösung
- umgerechnet wird. Das kostet natürlich erhebliche Rechenzeit, weswegen
- einige zusätzliche Maßnahmen getroffen wurden, diese Umrechnung optional
- auf Kosten der Genauigkeit und/oder des Speicherplatzes abzukürzen.
-
-
- Installation:
- -------------
- Es reicht, das Programm VGA_SIMU.PRG in den AUTO-Ordner zu kopieren.
- VGA_SIMU.PRG sollte dabei möglichst als eines der letzten Programme,
- jedenfalls nach GEMRAM, GDOS, NVDI usw. im AUTO-Ordner stehen.
-
- Mit dem Programm PATCH.PRG können noch bestimmte Voreinstellungen in
- VGA_SIMU.PRG "gepatcht" werden, momentan sind dies:
-
- Die Standard-Auflösung: Das ist die Auflösung, in die der TT nach dem
- Booten wechselt. Man kann wählen zwischen der Standard-VGA-Auflösung,
- der hohen TT-Auflösung und Abfragen der Auflösung beim Booten.
-
- Warten im Fehlerfall: Gibt an, ob im Fehlerfall (zu wenig Speicher,
- kein Monochrom-Monitor angeschlossen, usw.) nach der Ausgabe der
- Fehlermeldung noch auf einen Tastendruck gewartet werden soll.
-
- ST-Auflösungen zoomen: Hier kann gewählt werden, ob die ST-Auflösungen
- vierfach vergrößert werden sollen, oder unvergrößert in der Mitte des
- Bildschirms erscheinen sollen (was natürlich flotter geht).
-
- Umrechnungstabellen: Hiermit kann gewählt werden, ob 512 kByte Speicher
- für Tabellen reserviert werden dürfen, die die Umrechnung des Bildschirm-
- Speichers in die hohe TT-Auflösung beschleunigen können.
-
- Prüfsummen benutzen: Durch Benutzung von Prüfsummen kann die Umrechnung
- des Bildschirmspeichers vermieden werden, wenn sich dieser nicht oder
- nur wenig ändert. Es können dabei allerdings u.U. Fehler entstehen, die
- sich als "Dreck" auf dem Bildschirm äußern. Durch leichtes "Überwischen"
- mit der Maus kann dieser Dreck aber meist leicht wieder entfernt werden.
-
- Schließlich kann noch das Programm VGA_SIMU.CPX in den CPX-Ordner kopiert
- werden. Damit können die drei letzten Optionen noch im laufenden Betrieb
- anders gewählt werden, wenn das XCONTROL-Accessory zugänglich ist.
-
-
- Betrieb:
- --------
- Während des Betriebs können wie gesagt einige Optionen über VGA_SIMU.CPX
- geändert werden. Zu beachten ist, daß der VGA-Simulator auch dann im
- Speicher installiert ist und bleibt, wenn er in der hohen TT-Auflösung
- gestartet wird, damit man nachträglich in die VGA-Auflösungen umschalten
- kann. Der VGA-Simulator unterstützt nämlich ausdrücklich das Umschalten
- zwischen der hohen TT-Auflösung und den VGA-Auflösungen. Leider wird
- dies allerdings auch bei der aktuellen TOS-Version 3.06 noch vom AES,
- VDI und vom Desktop "mit allen Mitteln" verhindert, ist also in der Praxis
- noch nicht möglich. Trotzdem ist der VGA-Simulator auf "unsaubere Hacks"
- und bessere Zeiten mit neuen TOS-Versionen bereits vorbereitet.
-
-
- Einschränkungen:
- ----------------
- Natürlich kann der VGA-Simulator keine Farben auf den Monochrom-
- Bildschirm "zaubern". Deswegen (und wegen des Brems-Effekts) ist er
- natürlich nur als Behelf anzusehen. Die Farben können wegen des dazu
- nötigen Zeitaufwandes nicht in echte Graustufen umgerechnet werden
- und die Farbpalettenregister werden auch nicht unterstützt. Das
- Pixelmuster für einen Farbpixel entspricht einfach dem Bitmuster,
- den der Index in die Farbpalette darstellt. Trotz seiner Einfachheit
- ist dieses Umrechnungsverfahren aber erstaunlich brauchbar und hat
- sich auch schon bei vielen Farb-Simulatoren auf dem Atari ST bewährt.
-
- Der Simulator greift lediglich in die unterste Ebene zur Programmierung
- der Atari-Video-Hardware ein, das XBIOS. Alle Programme, die sauber über
- das XBIOS laufen, sollten mit dem VGA-Simulator keine Probleme bekommen.
- Leider sind es aber nicht nur einige Telespiele, die unter Umgehung des
- XBIOS direkt auf die Atari-Video-Hardware zugreifen, sondern unverständ-
- licherweise sogar in einigen Fällen das Standard-VDI. Das gilt insbesondere
- für die VDI-Funktion vq_color(). Bei der Änderung der Farbpalette ist daher
- mit den merkwürdigsten Ergebnissen zu rechnen. Da die Farbpalette aber wie
- gesagt sowieso nicht vom Simulator unterstützt wird, stellt dies natürlich
- kein allzu großes Problem dar. Hoffen wir trotzdem auf ein "sauberes" VDI
- im angekündigten "Multi-TOS".
-
- Es kann sein, daß der VGA-Simulator mit Telespielen, die direkt die
- Video-Hardware programmieren, den VBl-Interrupt blockieren oder ein
- genaues Timing benötigen, nicht richtig arbeitet oder gar "abstürzt".
- Bei sauber programmierter Software dürfte dies allerdings nicht vorkommen.
-
- Achtung: Nicht alle "Abstürze" sind unbedingt auf den VGA-Simulator
- zurückzuführen. Viele Programme laufen einfach nicht in allen Auflösungen
- einwandfrei. Auch das Wechseln der Auflösung hat einige Tücken. Der
- Bildschirmschoner IDLE.ACC stürzt z.B. grundsätzlich beim Auflösungswechsel
- ab. Außerdem ist die XBIOS-Funktion EsetShift() auch in der aktuellen
- TOS-Version 3.06 noch fehlerhaft.
-
- Das Programm sollte wesentlich schneller laufen, wenn es selbst und die
- Umrechnungstabellen im "Fast-RAM" liegen können. Das setzt natürlich
- voraus, das selbiges vorhanden ist. Da dies beim TT des Programmautors
- leider nicht der Fall ist, konnte der Betrieb mit dem "Fast-RAM" noch
- nicht getestet werden.
-
-
- Geplante Verbesserungen:
- ------------------------
- Bis zur offiziellen Shareware-Version 1.0 ist vieles geplant. Ob alles
- umgesetzt wird, hängt wie gesagt vor allem von der Resonanz unter den
- Anwendern ab. Verbesserungsvorschläge werden jederzeit angenommen.
-
- Zunächst bietet es sich natürlich an, einen Bildschirmschoner zu
- integrieren. Das Problem mit den Bildschirmschonern für die hohe Auflösung
- des Atari TT ist ja, daß sie 150 kByte als Bildschirmpuffer benötigen, wenn
- sie auch mit Programmen arbeiten sollen, die kein AES-Redraw unterstützen.
- Deswegen verzichtet das zum Lieferumfang des TT gehörende MACCEL3 auch
- auf das Schonen des Bildschirms in der hohen Auflösung. Da der VGA-Simulator
- aber sowieso einen Bildschirmpuffer anlegt, ist das hier kein Thema.
- Außerdem kann das laufende Programm in der "Schonzeit" des Bildschirms
- mit voller Geschwindigkeit laufen, ohne bremsendes Umrechnen. Der Bild-
- schirm könnte in dieser Zeit "eingefroren" oder schwarz geschaltet werden,
- Feuerwerk oder fliegende Toaster (wie phantasielos) anzeigen.
- Originellere Ideen, die sich leicht in Assembler realisieren lassen und
- nicht zu viel Speicherplatz benötigen, sind herzlich willkommen.
-
- Eine andere Sache ist das regelmäßige Umkopieren des Bildschirms.
- Diese Methode war beim Atari ST noch angebracht. Der Atari TT verfügt
- jedoch mit dem 68030 über eine integrierte MMU (Memory Management Unit),
- die zur Unterstützung eines virtuellen Bildschirms geradezu prädestiniert
- ist. Leider verfügt der Autor zur Zeit jedoch noch über keine brauchbare
- Dokumentation zur MMU des 68030 im allgemeinen und es gibt auch noch keine
- Richtlinien zur Programmierung der MMU auf dem TT von Atari im besonderen.
- Es ist zu erwarten, daß durch sinnvollen Einsatz der MMU der VGA-Simulator
- erheblich beschleunigt werden kann. Ideen und Anregungen zu diesem Thema
- nimmt der Autor besonders gerne entgegen. Zumindest kann der VGA-Simulator
- in der derzeitigen Version nicht mit anderen Programmen kollidieren, die
- ebenfalls die MMU benutzen, z.B. 24BIT.PRG, ROMRAM, usw.
-
- Schließlich sucht der Autor noch eine Möglichkeit, von den VGA-Auflösungen
- in die hohe TT-Auflösung zu schalten, und umgekehrt. Wie gesagt wird dies
- vom VGA-Simulator unterstützt, aber bisher vom GEM erfolgreich behindert.
- Auch eine Umschaltung für einzelne Programme wäre hilfreich. Dann könnte
- man ständig in der hohen TT-Auflösung bleiben, und ein Hilfsprogramm würde
- dafür sorgen, daß für Programme, die nur in einer der VGA-Auflösungen
- arbeiten, automatisch in die die entsprechende Auflösung geschaltet wird.
- In den bisherigen TOS-Versionen ist dies sicher nur mit "illegalen Mitteln"
- zu erreichen, aber auch mit solchen kaum möglich, wie der Autor nach vielen
- frustrierenden Versuchen feststellen mußte. Auch hier bleibt also wohl nur
- die Hoffung auf das "Multi-TOS".
-
-
- Störungen und Fehlerbeseitigung
- -------------------------------
- Sollte der VGA-Simulator nicht funktionieren oder Probleme bereiten, die
- nicht im Abschnitt "Einschränkungen" erwähnt sind, ist der Autor für eine
- genaue Problembeschreibung dankbar. Solange es sich nicht um eine der im
- Abschnitt "Haftungsausschluß" erwähnten größeren Katastrophen handelt,
- könnte dieses Problem dann möglicherweise in einer nächsten Version behoben
- werden. Zuvor lese man aber noch einmal die gesamte Anleitung, um abzuklären,
- ob das Problem wirklich am VGA-Simulator liegt. Es handelt sich oft auch um
- Seiteneffekte mit anderen Hintergrund-Programmen. Daher ist es ratsam, den
- Rechner einmal nur mit dem VGA-Simulator zu booten, also soweit möglich ohne
- andere Programme im AUTO-Ordner und ohne Accessories. Durch "stufenweises
- Hinzufügen" der anderen Programme kann man dann den "Störenfried" finden.
- Manchmal hilft es, einfach die Reihenfolge der Programme im AUTO-Ordner
- zu ändern. Hier muß man etwas experimentieren.
-
-
- Adresse des Autors:
- -------------------
- Der Programmierer vom Dienst,
-
- Christoph Zwerschke Bankverbindung:
- Am Steinfeld 4 Bezirkssparkasse Heidelberg
- D-4714 Cappenberg BLZ: 67250020 Kto: 4338405
-
- Zur Zeit auch im Maus-Netz (Christoph Zwerschke @ KA) zu erreichen.
-
-